Impedance simulating motion controller for orthotic and prosthetic applications

ABSTRACT

An impedance simulating motion controller for orthotic and prosthetic devices includes an equilibrium trajectory generator that receives locomotion data regarding the locomotion of a user, a dynamic trajectory compensator that generates one or more control parameters based on the locomotion data and one or more physiological characteristics of the user, and a dynamic gain tuner that adjusts the one or more control parameters based on a gain scaling factor that is calculated using a measured deflection point and an expected deflection point. The adjusted control parameters are used to control movement of an actuator of an orthotic or prosthetic device.

CROSS-REFERENCE TO RELATED APPLICATIONS

Any and all applications for which a foreign or domestic priority claim is identified in the Application Data Sheet as filed with the present application are hereby incorporated by reference under 37 CFR 1.57. This application is a divisional application of U.S. patent application Ser. No. 14/722,630, filed May 27, 2015, which is a continuation of U.S. patent application Ser. No. 13/099,961, filed on May 3, 2011, now U.S. Pat. No. 9,060,884, issued Jun. 23, 2015. The disclosure of each of the above-referenced applications is hereby expressly incorporated by reference in its entirety for all purposes and forms a part of this specification.

TECHNICAL FIELD

The present invention relates to an impedance simulating motion controller for orthotic and prosthetic applications.

BACKGROUND

Prosthetic and/or orthotic devices (“PODS”) for restoring or replacing lost lower-limb functions have been available for many years. Until recently, both types of devices were found as purely mechanical linkages making advantageous usage of simple mechanisms in order to preclude knee buckling in level walking stance phase, while still ensuring some form of swing motion during the aerial phase. While this type of device was shown to be fairly efficient in restoring the structural aspects of the lower-limb role in gait, their incapacity to properly sustain the wide variety of lower-limb dynamics associated with the various gait locomotion activities performed on a daily basis appeared as a sufficient limitation to sustain the development of more advanced devices.

While significant efforts have been directed towards designing more advanced mechanisms allowing easier adjustment, or more progressive action, through pneumatics and hydraulics, the rapid advances in energy storage and computer technologies soon allowed to extend the realm of capacities associated with typical PODS. Real-time configuration of passive braking devices such as disclosed, for example, in U.S. Pat. No. 5,383,939 and US Patent Application Publication No. 2006/0136072 A1, greatly improved the adaptability of PODS to user gait specificities or to variations of the environment in which the locomotion tasks are performed. Moreover, these PODS allowed the addressing of energy dissipative locomotion tasks in a physiologically-compliant manner never seen before. Although showing increased performance and dynamic adaptation with respect to the locomotion tasks being undertaken when compared to their predecessors, this first generation of computer-controlled PODS still lacked the adaptability and flexibility required to smoothly integrate into users' daily lives.

Integration of computer controls to PODS brought about the necessity for some sort of control system in order to link sensory inputs to the now dynamically configurable actuator. However, the purely dissipative nature of these devices greatly simplifies the problem as mechanical power exchanges between the user and the device are unidirectional (i.e., user has to initiate all tasks and provide mechanical power).

Latest efforts in the field of advanced PODS, such as disclosed, for example, in U.S. Patent Application Publication No. 2004/0181289 A1, herein incorporated by reference in its entirety, partly resolved some of the limitations observed in the first generation of computer-controlled PODS by providing a fully motorized prosthetic platform, allowing to address all major locomotion tasks, irrespective of their generative or dissipative nature. Requirements for computer-controlled system appeared quite more complex as the interactions between the user and the prosthetic or orthotic device were no longer solely initiated by the user himself. Through the use of a two layer control system, the motorized prosthetic and/or orthotic device (“POD”) was allowed to efficiently manage the mechanical power exchange between the user and the device, such that the synergy between user and motorized POD globally benefited the user. Adequate usage of the POD capacity to generate mechanical power was observed to lead to increased gait quality and activity levels.

Nevertheless, the use of strict state machines to implement the artificial intelligence engine as the highest layer of the POD control system is observed to impose a certain formalism on the manner in which the user executes typical locomotion tasks. While generating a certain learning burden on the user side, the use of firm triggers in order to trigger either distinct state transition or specific joint behavior greatly affects man-machine symbiosis. Moreover, limitations associated with the use of a strict state machine artificial intelligence engine when working in a highly variable environment (i.e., external environment and user himself) are well known and quickly show up as robustness issues from a system perspective. Finally, processing associated with the extraction of complex features associated with specific locomotion task detection is also known to generate a latency between measurement of the sensors value and implementation of the actual actions, which is often observed to greatly affect the POD usability and performance.

Furthermore, common PODS lack the ability to properly reproduce natural knee joint behavior and dynamic properties when used in a context that significantly differs from typical locomotion tasks. While generation of proper joint dynamics during cyclical locomotion portions ensure high symbiosis and user benefits, limitations observed in the capacity to reproduce natural joint compliance, or motions, in either non-locomotor or non-cyclical tasks significantly affect POD usability and, accordingly, associated user benefits.

Based on these last observations, it clearly appears that requirements for an improved orthotic and prosthetic control system exist. More specifically, a need to develop a control system architecture and associated engines that are able to sustain more efficiently limited ambulation, as well as non-cyclical and cyclical gait for users suffering of either amputation of the lower-limb or dysfunction requiring the use of an orthosis or prosthesis exists.

SUMMARY

In accordance with the present disclosure there is provided a controller for controlling a motorized prosthetic or orthotic device provided with a joint. In one embodiment, the controller includes an equilibrium trajectory generator configured to receive locomotion data regarding the locomotion of a user of a motorized prosthetic or orthotic device, and generate one or more control parameters to control the motorized prosthetic or orthotic device based at least on the locomotion data, a dynamic trajectory compensator configured to dynamically to generate one or more compensated control parameters by adjusting at least one control parameter from the one or more control parameters based at least on one physiological characteristic of the user, a dynamic gain tuner configured to generate one or more tuned control parameters by dynamically modifying at least one of the one or more compensated control parameters using a gain scaling factor, and a proportional-derivative position controller configured to generate one or more control signals using the one or more tuned control parameters, wherein the control signals are used to control movement of an actuator.

In one embodiment, the locomotion data includes at least locomotion portion data and phase of locomotion data, and the equilibrium trajectory generator receives the locomotion data from a locomotion recognition module. In one embodiment, the equilibrium trajectory generator calculates one or more control parameters based on general characteristics of human locomotion using non-complex mathematical relationships. In one embodiment, the equilibrium trajectory generator generates the one or more control parameters based on an equilibrium trajectory. In one embodiment, the one or more control parameters comprise at least one of a desired position, a proportional gain, and a derivative gain. In one embodiment, the dynamic trajectory compensator is further configured to dynamically compensate the at least one control parameter based at least on one of dynamic stiffness, joint expected loading, and desired kinematic behavior. In one embodiment, at least one physiological characteristic is at least one of body mass and weight. In yet another embodiment, the dynamic gain tuner calculates the gain scaling factor using at least one of a measured deflection value at a first time, an expected deflection value at the first time, and an equilibrium value at the first time. In one embodiment, the first time is the time at which the controller measures the maximal deflection value from the equilibrium trajectory during the stance phase of the gait cycle.

The description further includes a method of controlling a motorized prosthetic or orthotic device provided with a joint. In one embodiment, the method includes receiving locomotion data regarding the locomotion of a user of a motorized prosthetic or orthotic device, generating one or more control parameters to control the motorized prosthetic or orthotic device based at least on the locomotion data, dynamically adjusting at least one of the one or more control parameters based at least on one physiological characteristic of the user, and generating one or more control signals using at least the dynamically adjusted control parameter to control movement of an actuator.

In one embodiment, the method can further include determining whether a difference between a measured deflection value and an expected deflection value falls within a tolerance level, and modifying the at least one adjusted control parameter when it is determined that the difference between the measured deflection value and the expected deflection value falls outside the tolerance level.

The description further includes a motorized prosthetic or orthotic device. In one embodiment, the motorized prosthetic or orthotic device includes a proximal segment, a distal segment, a joint segment coupling the proximal segment to the distal segment, an actuator coupled to the distal segment and configured to actuate the distal segment with respect to the proximal segment, and a controller configured to generate one or more control parameters based on locomotion data of a user and at least one physiological characteristic of the user, generate one or more tuned control parameters by dynamically modifying at least one of the one or more control parameters using a gain scaling factor, and transmit control signals to the actuator based on the one or more tuned control parameters.

The description further includes a method of controlling a motorized prosthetic or orthotic device provided with a joint. In one embodiment, the method includes receiving locomotion data regarding the locomotion of a user of a motorized prosthetic or orthotic device, generating one or more control parameters to control one or more actuators of the motorized prosthetic or orthotic device based at least on the locomotion data and an equilibrium trajectory, wherein the equilibrium trajectory is calculated using kinematic data, generating one or more control signals for the one or more actuators based on the one or more control parameters, and transmitting the one or more control signals to the actuator.

In one embodiment, the equilibrium trajectory is calculated using a regression line of torque-angle during a stance phase of a gait cycle. In another embodiment, the equilibrium trajectory is different from normal knee joint kinematic behavior. In yet another embodiment, the kinematic data is Winter's kinematic data. In one embodiment the method uses the equilibrium trajectory to approximate a kinematic reference model. In one embodiment, the kinematic reference model is Winter's Reference Trajectory.

In one embodiment the method further includes generating control signals using a proportional-derivative controller and the control parameters to control actuation of the actuator, wherein the control signals set a stiffness value for the actuator such that knee angle deflection of the motorized prosthetic or orthotic device approximates a kinematic reference model. In one embodiment, the one or more control parameters include at least a position set-point, a proportional gain, and a derivative gain. In one embodiment, the equilibrium trajectory is approximately constant during at least a portion of the stance phase of a gait cycle.

BRIEF DESCRIPTION OF THE FIGURES

Embodiments of the invention will be described by way of example only with reference to the accompanying drawings, in which:

FIG. 1 is a block diagram of a motorized prosthetic and/or orthotic device (“POD”);

FIG. 2A is a block diagram of a motorized POD which comprises an impedance simulating motion controller;

FIG. 2B is a block diagram of a motorized POD which comprises an impedance simulating motion controller according to an alternative embodiment;

FIG. 3 is a schematic representation of the proportional-derivative position controller and the motorized POD, which is represented by the Laplace-domain double integrator;

FIGS. 4A and 4B are plots of the knee torque and angular position profiles provided by Winter's data for level walking;

FIG. 5 is a level walking cyclogram based on Winter's data;

FIG. 6 is a plot of the equilibrium trajectory profile compared to the reference trajectory provided by Winter kinematics data for level walking;

FIGS. 7A and 7B are plots of the knee torque and angular position profiles provided by Winter's data for stairs ascent;

FIG. 8 is a stairs ascent cyclogram based on Winter's data;

FIG. 9 is a plot of the equilibrium trajectory profile compared to the reference trajectory provided by Winter kinematics data for stairs ascent;

FIGS. 10A and 10B are plots of the knee torque and angular position profiles provided by Winter's data for stairs descent;

FIG. 11 is a stairs descent cyclogram based on Winter's data;

FIG. 12 is a plot of the equilibrium trajectory profile compared to the reference trajectory provided by Winter kinematics data for stairs descent;

FIG. 13 is a plot of the equivalent mass linearization scheme as a function of joint angle degree;

FIG. 14, is a block diagram of an alternative embodiment of the impedance simulating motion controller of FIG. 2A, which includes a dynamic gain tuner according to an embodiment;

FIG. 15, is a block diagram of an alternative embodiment of the impedance simulating motion controller of FIG. 2B, which includes a dynamic gain tuner;

FIG. 16, is a block diagram of a motorized POD which comprises a motion controller that includes a dynamic gain tuner;

FIG. 17 is a plot defining the principal dynamics tuning parameters for the position response during level walking;

FIG. 18 is a plot of the selected equilibrium trajectory together with the kinematics reference position trajectories for slow, normal and fast gait cadences;

FIG. 19 is a plot of the expected deflection vs. cadence; and

FIG. 20 is a flow diagram of a tuning process that may be executed by the dynamic gain tuner.

DETAILED DESCRIPTION

Generally stated, the non-limitative illustrative embodiment of the present invention provides an impedance simulating motion controller for prosthetic and/or orthotic devices (“PODS”) for restoring lost locomotor functions, or facilitate gait re-education resulting from various pathologies. The impedance simulating motion controller is a low-level motion controller that makes use of a position controller formulation combined with the implementation of specific knee joint compliance such that the position tracking constraint of the controller is relaxed to allow behavior similar to what can be observed on the human knee joint. To this end, instead of adopting the usual position control strategy consisting of enforcing a very stiff position tracking of the time-based position trajectory, the impedance simulating motion controller implements a loose position tracking strategy, where the deviation between a reference (equilibrium) trajectory and actuator motion is calibrated in such a way as to simulate the human knee joint natural behavior and mechanical impedance. The impedance observed at the knee joint can also be referred to as stiffness, or dynamic stiffness.

FIG. 1 illustrates a block diagram of a motorized prosthetic and/or orthotic device (“POD”) 10, which includes a proximal segment 20, a distal segment 30, a joint segment 40, an actuator 50, and a controller 60. Examples of such PODS are discussed in greater detail, with reference to U.S. Pat. No. 7,867,284, entitled CONTROL SYSTEM AND METHOD FOR CONTROLLING AN ACTUATED PROSTHESIS; U.S. Pat. No. 7,137,998, entitled POSITIONING OF LOWER EXTREMITIES ARTIFICIAL PROPRIOCEPTORS; and U.S. Pat. No. 7,815,689, entitled, INSTRUMENTED PROSTHETIC FOOT; and U.S. Publication Nos. 2009-0299480, entitled JOINT ACTUATION MECHANISM FOR A PROSTHETIC AND/OR ORTHOTIC DEVICE HAVING A COMPLIANT TRANSMISSION; and 2010-0160844, entitled HIGH TORQUE ACTIVE MECHANISM FOR ORTHOTIC AND/OR PROSTHETIC DEVICES; all of which are herein incorporated by reference in their entirety.

The proximal segment 20 can include a socket to hold the stump of an amputee. Furthermore, the proximal segment 20 can be connected to the distal segment 30 via the joint segment 40. In one embodiment, the distal segment 30 includes the actuator 50. In other embodiments the actuator can be located between the proximal segment 20 and the distal segment 30. The actuator can be implemented using a screw actuator, however, other types actuators may be used without departing from the spirit and scope of the description. The controller 60 can be located in any number of locations, including the proximal segment 20, the distal segment 30, or the joint segment 40. The controller 60 can be an impedance simulating motion controller, which will be described in greater detail below, with reference to the remaining figures.

Referring to FIG. 2A, there is shown a block diagram of a motorized prosthetic and/or orthotic device (“POD”) 200 which comprises a locomotion recognition module 110, an impedance simulating motion controller 100, sensors 142, and one or more actuators 144. Examples of motorized knee prostheses are shown in U.S. Pat. No. 7,314,490 entitled “ACTUATED LEG PROSTHESIS FOR ABOVE-KNEE AMPUTEES”, U.S. Patent Application Publication No. 2004/0181289 entitled “ACTUATED PROSTHESIS FOR AMPUTEES” and U.S. Patent Application Publication No. 2006/0122711 A1 entitled “ACTUATED LEG PROSTHESIS FOR ABOVE-KNEE AMPUTEES”, all by Bedard, all of which are incorporated by reference herein in their entirety.

The sensors 142 and one or more actuators 144 interact with the environment and can provide information to the motorized POD 200 regarding location, speed, and other information about the POD 200 to the impedance simulating motion controller 100. For example, the sensors 142 may be in the form of one or more position encoders providing an angle of a corresponding joint of the motorized POD 200. The one or actuators 144, controlled by the impedance simulating motion controller 100, generate behavior to sustain a predefined kinematics behavior with the environment 150. The one or more actuators 144 can be implemented using any number of different actuator types. In one embodiment, the one or more actuators are linear actuators.

The impedance simulating motion controller 100 includes an equilibrium trajectory generator 120 with an associated lookup table 122, a dynamic trajectory compensator 125 and a proportional-derivative position controller 130, and is used in association with a locomotion recognition module 110.

An example of a locomotion recognition module 110, a trajectory generator 120, and associated lookup table 122 is described in U.S. Patent Application Publication No. 2006/0122710 A1 entitled “CONTROL DEVICE AND SYSTEM FOR CONTROLLING AN ACTUATED PROSTHESIS” by Bedard, herein incorporated by reference in its entirety.

The locomotion recognition module 110 gathers data provided by the sensors 142 to calculate information about the user's locomotion (e.g. level walking, stairs ascent, stairs descent, etc.). The locomotion information can be further subdivided into a locomotion portion and phases of locomotion portion. In one embodiment, the locomotion information is provided to the equilibrium trajectory generator 120. In other embodiments, the locomotion data is provided directly to a dynamic gain tuner, described in greater detail below with reference to FIGS. 14, 15, and 16.

The equilibrium trajectory generator 120 uses the locomotion data received from the locomotion recognition module 110, to generate control parameters to control the actuator 144. The control parameters are calculated based on general characteristics of human locomotion as well as the locomotion data. Thus, based on the cadence, type of movement (level walking, stair ascent/descent, incline, decline, etc.), stride length, etc., the equilibrium trajectory module can select the appropriate control parameters. The general characteristics human locomotion can be obtained using kinematic and kinetic data generated by observing human gait cycles. In one embodiment, the data used is Winter's kinematics and kinetic data as described in The Biomechanics and Motor Control of Human Gait, Winter, D. A., University of Waterloo, 72 p., Waterloo, 1987. Throughout the specification reference is made to Winter and Winter's data. However, it is to be understood that other kinematics data can be used to implement the features described herein without departing from the spirit and scope of the description.

The control parameters can be generated using non-complex mathematical relationships whose coefficient values are stored in the lookup table 122. These mathematical relationships (time-dependent equations and static characteristics) characterize the relationships between the locomotion of the user and the control parameters. Furthermore, the kinematic data that describes the general characteristics of human gait, mentioned above, can be used to create an equilibrium trajectory, described in greater detail below with reference to FIGS. 4A-12. Based on the equilibrium trajectory, the appropriate coefficient values for the control parameters can be selected. The control parameters generated by the equilibrium trajectory generator 120 include, but are not limited to, desired position Θ_(d) set-points, and proportional gain K_(P), and derivative K_(D) gain. As mentioned previously, the control parameters can be used by the proportional-derivative position controller 130 to generate the control signals to control the actuator 144. It is to be understood that additional, or different, information may also be used, such as speed.

The equilibrium trajectory generator 120 and dynamic trajectory compensator 125 are configured to generate the control parameters for the actuator 144 so that the POD 200 approximates a desired kinematic behavior or a kinematic reference model. The kinematic reference model can be based on Winter's Reference Trajectory. In one embodiment, the equilibrium trajectory generator 120 with its associated lookup table 122 and the proportional-derivative (PD) controller 130 forms the motion controller, while the dynamic trajectory compensator 125 defines the loose position tracking strategy that simulates impedance motion control. In this embodiment, the equilibrium trajectory generator 120 outputs the control parameters without regard to the physiological characteristics of the user. The dynamic trajectory compensator 125 then compensates the control parameters based on physiological characteristics of the user. In this way, the POD 200 kinematics can more closely model normal kinematic behavior. The equilibrium trajectory and stiffness can be set such that the kinematic behavior of the POD 200 approximates a desired kinematic behavior or kinematic reference model, such as Winter's Reference Trajectory.

In an alternative embodiment, illustrated in FIG. 2B, the lookup table 122′, associated with the equilibrium trajectory generator 120, can be modified to contain values that have already been compensated at manufacturing for user physiological characteristics. In this manner, the controller 100′ can provide a simulated impedance motion control capability without the dynamic trajectory compensator 125. In other words, the lookup table 122′ in controller can contain the compensated values, or compensated control parameters, before the user begins a gait cycle. Rather than dynamically compensating for the physiological characteristics of the user during, or between, gait cycles, the controller 100′ can already have the compensated values stored. The calibration that occurs to obtain the compensated values based on the physiological characteristics of the user is referred to below as the static calibration model. Alternatively, as mentioned, the dynamic trajectory compensator 125 can adjust the control parameters dynamically. This can occur in real-time, during user walking, or movement, and can occur during or between gait cycles.

Both impedance simulating motion controllers 100 and 100′ will be described in greater detail below.

Position Control

The proportional-derivative position controller 130 uses the control parameters compensated by the dynamic trajectory compensator 125 (or directly from the equilibrium trajectory generator 120 in the case of the impedance simulating motion controller 100′ of FIG. 2B) and feedback signals from the sensors 142 to adjust the control signals that the impedance simulating motion controller 100 (or 100′) provides to the actuator 144.

Referring to FIG. 3, there is shown a schematic representation of the proportional-derivative position controller 130 and the motorized POD 200, which is represented by the Laplace-domain double integrator. Position Θ and velocity {dot over (Θ)} feedback loops 133 and 131, respectively, are closed to form a tracking controller where the position Θ_(d-C) set-point 132 is used as a comparison value. Furthermore, variable gains K_(P-C) 134 and K_(D-C) 136 are applied to both measured position Θ 137 and velocity {dot over (Θ)} 138 feedback values.

Finally the mass gain M_(d) ⁻¹ 139 affects the actuator 144 force set-point allowing the simulation of system apparent inertia through appropriate scaling of proportional-derivative position controller 130 output.

In FIG. 3, Θ_(d-C) 132, K_(P-C) 134 and K_(D-C) 136 represent the control parameters compensated either dynamically by the dynamic trajectory compensator 125 or at manufacturing in the compensated lookup table 122′.

Dynamic Trajectory Compensator

The dynamic trajectory compensator 125 dynamically adjusts the control parameters generated by the equilibrium trajectory generator 120, to generate compensated control parameters. Specifically, the dynamic trajectory compensator 125 can dynamically adjust the desired position Θ_(d) set-points, proportional gain K_(P), and derivative K_(D) gain, with respect to the locomotion task being undertaken by the motorized POD 200 and the physiological characteristics of the user to generate the compensated control parameters. In this manner, the dynamic trajectory compensator 125 can facilitate natural interactions and dynamics between the user and the motorized POD 200.

The dynamic trajectory compensator 125 can use different techniques to generate the compensated control parameters based on the control parameter being adjusted. To determine the compensated position set-point Θ_(d-C) 132, the dynamic trajectory compensator 125 can use knee dynamic stiffness data (e.g., FIGS. 5, 8, 11), knee joint expected loading (e.g., user physiological characteristics), and a kinematics reference model or desired kinematics behavior (e.g., Winter's Reference Trajectory). As for the determination of the compensated variable gains K_(P-C) and K_(D-C), the dynamic trajectory compensator 125 can use a static calibration model, which allows the automatic definition of proportional-derivative position controller 130 gains based on user physiological characteristics.

Knee Joint Physiological Stiffness Computation

The static calibration model used for determining the compensated variable gains K_(P-C) 134 and K_(D-C) 136 is based on results obtained from the analysis of knee joint torque-angle cyclograms of normal subjects performing various locomotion tasks, e.g. level walking, stairs ascent, stairs descent, etc. and specific user physiological characteristics. In one embodiment, the user physiological characteristic used is user body mass (including the motorized POD 200), which is known to affect the knee joint dynamic behavior. The static calibration model is based on the estimated normal knee joint stiffness as found for natural cadence level walking.

The static calibration model is developed based on Winter's kinematics and kinetic data as described above. However, it is to be understood that other kinematics data can be used to implement the features described herein without departing from the spirit and scope of the description. The use of body mass normalized knee joint torque values to define the static calibration model provides body mass dependency in the model. While the static calibration model described uses the natural cadence level walking estimated joint stiffness, stairs ascent and descent cases are also analyzed in order to quantify the joint impedance specifications for these specific portions.

In one embodiment, the physiological characteristic used to describe the knee joint behavior during typical locomotion tasks is the body mass. Body mass, for both amputees and non-amputees, directly affects the actual lower-limb articulation behavior under loading. Modifying the body mass directly modifies the level of loading observed at the articulation, similar to the effects of a payload, and leads to a modification of the knee joint dynamic stiffness in order to reduce its effects on the position response. Other generally lower-limbs normalization schemes (i.e., body weight, body weight times height) can also be used. Furthermore, other physiological characteristics can be used, such as BMI, stride length, segment length, shank to thigh length ratio, knee load, body center of mass, or other parameters that would aid in describing how force is transmitted to the knee by the body mass.

Knee Joint Torque-Angle Diagram Analysis

Referring to FIG. 5, which provides an example of a torque-angle cyclogram 502 generated from Winter's data for normal gait cadence, the cyclogram starts at heel strike, labeled “start” 504 and circulates towards the point labeled “End” 506, which corresponds to the last point of the gait cycle. Using Winter's convention, toe-off 508 occurs at approximately 60% of the gait cycle and marks lower-limb system configuration transition from an interacting state to a non-interacting state.

From FIG. 5, it can be observed that the torque-angle characteristic presents at least two regions where the curve can generally be approximated by a straight line. The first region 510 includes a clockwise loop in the stance phase of the gait cycle. In this region of the cyclogram 502, a straight line 512 that stretches between the minimal torque position, point A, and the maximal torque position, point B, can approximate the first region 510 of the curve. As the region 510 more or less corresponds to the loading part of the stance and the slope of the regression line 512 of the torque-angle characteristic is fairly constant, the knee joint dynamic stiffness can be approximated by a constant throughout the stance phase of the gait for level walking. The regression line 512 can further be used to calculate the equilibrium trajectory. Non-linear behavior of the torque-angle curve where imputed to hysteresis can be caused by viscous friction and joint internal damping.

The second region displaying a fairly linear behavior of the torque-angle characteristic 518 is found at the late swing phase and stretches between the maximal angle point 520 and the minimal angle point 522. The second region 518 of the gait cycle includes the knee joint extension motion used to bring back the lower-limb in its pre-heel strike configuration. Again, the slope of the linear trend regression line 524 during a stance phase of the torque-angle curve represents the dynamic stiffness of the knee joint for that specific part of the gait cycle and these particular conditions, and can be used to calculate the equilibrium trajectory.

Between the two linear regions 510, 518, the torque-angle curve presents a fairly non-linear behavior. The lower-limb configuration transition phase found between the early stance and the late swing can be characterized by an important variation of the knee joint dynamic stiffness, which generates the non-linear behavior of the torque-angle characteristic.

The late swing region of the characteristic curve displays a lower stiffness value than what is observed for the early stance phase. The swing phase stiffness can therefore be accounted for as being a scale down of the stance phase.

Level Walking Torque-Angle Diagram

As previously mentioned, the stiffness estimated during the early stance phase of the gait cycle using Winter's angle and torque data for normal gait cadence can provide satisfactory baseline controller gains, i.e. K_(P-C) and K_(D-C). Moreover, as discussed earlier, the dynamic stiffness, or impedance, characterizing the knee joint during typical level gait activities can be estimated from the slope of the torque-angle stance-phase linear regression line. The static calibration model can be calculated using the least-square regression of the selected torque-angle characteristic points to the linear template, similar to the equilibrium trajectory. In addition, the static calibration model can be based on user specific physiological characteristics so that the observed knee deflection closely follows a predefined kinematic reference model, such as the Winter Reference Trajectory.

With continued reference to FIG. 5, there is shown the early stance and late swing phase linear regression lines 512, 524 superposed onto the Winter's torque-angle data. It can be observed that the stiffness displayed by the knee joint during the stance phase is quite different from the one displayed during the swing phase. This difference can be explained by the different lower-limb mechanical configuration characterizing each phase of the gait cycle, as well as the difference in torque perturbations amplitude at the knee joint.

Table 1 provides the numerical slope values (i.e., stiffness) for the early stance and late swing phase linear regression lines.

TABLE 1 Estimated Stiffness from the Linear Regression Slopes Stiffness Gait Cycle Region [Nm/(kg*deg)] Early Stance 0.06663 Late Swing 0.004486

Using the stiffness values provided in Table 1 also allows the quantification of the stiffness variation between the stance and swing phases. For the specific case provided by Winter's data for normal cadence, it is found that the swing phase stiffness is approximately twelve times smaller than the stiffness observed for the stance phase. Nevertheless, while it may be assumed based on this data that this ratio is approximately constant for a varying body mass, it can be shown that this ratio is greatly affected by the cadence at which the estimation is performed. This last observation is sustained by the estimated stiffness provided for each cadence specified in Winter's data, as shown in Table 2.

TABLE 2 Influence of Cadence on the Knee Estimated Stiffness Gait Cadence Gait Cycle Stiffness [steps/min] Region [Nm/(kg*deg)] Slow Early Stance 0.05193 (85 steps/min) Late Swing 0.002098 Normal Early Stance 0.05563 (105 steps/min) Late Swing 0.004486 Fast Early Stance 0.06182 (125 steps/min) Late Swing 0.006076

The data provided in Table 2 shows that while both stance and swing phase stiffness are increasing with cadence, swing phase knee joint stiffness is shown to increase faster than the stance phase stiffness. Since swing phase knee joint perturbations are mostly of an inertial nature, higher cadences can lead to an increased stiffness in order to maintain a satisfactory performance level and adequate synchronism. Thus, the control parameters can be compensated based on the cadence of the POD user. As mentioned previously, this compensation can be done dynamically using the dynamic trajectory compensator 125 or can be stored in the lookup table 122′ of the equilibrium trajectory generator 120.

Stairs Ascent Torque-Angle Diagram

Similar to what was performed for the level walking case, it is possible to characterize knee joint gait cycle during stairs ascent using torque-angle cyclograms. While the analysis of the level walking knee joint gait cycle was sustained by the desire to characterize the relationship between knee joint dynamic stiffness and body mass, the stairs ascent analysis is more oriented towards the analysis of the stairs ascent gait cycle from an impedance standpoint and its comparison with the stiffness value found for the level walking case. In other words, it is desired to estimate the dynamic stiffness required at the knee joint in order to perform stairs ascent and relate the stairs ascent stiffness value to the stiffness value found for level walking at normal cadence.

One major difference between the level walking locomotion task and the stairs ascent locomotion task is found in the role of the knee joint itself and its contribution to the overall lower-limb dynamics. While the knee joint role during level walking is observed to be one of energy dissipation and position regulation, the knee joint role during stairs ascent is observed to present a more active contribution to the lower-limb dynamics. This difference is visible from the general appearance of the cyclogram, or more precisely the loops observed in the cyclogram. A clockwise loop in a torque-angle cyclogram corresponds to a network absorption by the joint, while a counter-clockwise loop corresponds to a network production by the joint. By comparing the loops found from both level walking and stairs ascent, it can be determined that the work produced by the knee joint during stairs climbing is an additional contribution.

Referring to FIG. 8, there is shown the torque-angle cyclogram 802 obtained from Winter's data for stairs ascent. The gait cycle as represented in FIG. 8 is subdivided into a weight acceptance phase 804, a pull-up phase 806 and a foot clearance phase 808. The weight acceptance 804 and pull-up 806 phases correspond to the stance phase of the gait cycle, while the foot clearance phase 808 corresponds to the swing phase.

The weight acceptance phase 804 corresponds to the completion of the foot placement and progressive weight transfer from one leg to the other. The exact shape and slope of this part of the torque-angle curve is found to vary based on the combination of voluntary movement of the joint, variation of the joint stiffness during foot placement, effect of body weight, and, finally, relative timing of these factors. The Winter-based torque-angle cyclogram 802 is characterized by the absence of any weight acceptance flexion of the joint, likely caused by a sufficient increase of the joint stiffness prior to weight transfer completion. This particular combination of events leads to a negative slope of the torque-angle linear regression line 810 in the weight acceptance phase region of the cyclogram 802. On the other hand, plotting the torque-angle characteristic using data showing weight acceptance flexion, leads to a positive slope of the linear regression line in that same part of the cyclogram. This type of gait kinematics can be found for cases where the knee joint stiffness increase is slightly delayed with respect of the weight transfer from one leg to the other or a diminished contribution of the opposite leg push off prior to toe-off.

It is then assumed that the stiffness found for the early stance phase (i.e., weight acceptance phase 804) provides a good estimate of the observed knee joint dynamic stiffness. Using the procedure defined previously, the dynamic stiffness associated to this specific gait portion, as well as the swing phase (i.e., leg pull through), are quantified by the slope of the best-fit linear regression of the torque-angle points included in the phases of the cycle. The resulting regression lines (810, 812, 814) are displayed on FIG. 8 and the linear regression parameters are provided under numerical format in Table 3.

TABLE 3 Estimated Stiffness from the Linear Regression Slopes Stiffness Gait Cycle Region [Nm/(kg*deg)] Weight Acceptance 0.07143 Foot Clearance 0.006509

From the data provided in Table 3, it can be observed that the knee joint dynamic stiffness estimated for the weight acceptance phase 804 in stairs ascent is found to be about 30% superior to its level walking counterpart, while the swing phase stiffness is found to be approximately 45% superior to the corresponding estimated level walking value.

Stairs Descent Torque-Angle Diagram

Similarly to what was performed in the case of the stairs ascent torque-angle diagram, it is possible to plot the torque-angle characteristic for the stairs descent gait task. Referring to FIG. 11, there is shown the torque-angle cyclogram obtained from Winter's data for stairs descent, along with the regressed linear trends displayed by the torque-angle data for the stance and swing phase of the gait cycle.

The stairs descent cyclogram 1102 is characterized by a single clockwise loop, corresponding to network absorption by the joint throughout the cycle. Also, the cyclogram 1102 displays two linear trends 1104, 1106 corresponding to the swing (i.e., leg pull-through) phase 1103 and the early stance (i.e., weight acceptance) phase 1105. Again, swing phase stiffness is observed to be quite lower than the stance phase stiffness. Performing least-squares linear regression of the torque-angle points, respectively, results in the early stance linear regression line 1108 and swing phase linear regression line 1110, which leads to the slope (i.e., stiffness) values provided in Table 4.

TABLE 4 Estimated Stiffness from the Linear Regression Slopes Stiffness Gait Cycle Region [Nm/(kg*deg)] Weight Acceptance 0.07143 Leg Pull Through 0.002684

Comparing the weight acceptance stiffness value provided by Table 4 to the weight acceptance stiffness value found earlier for the normal cadence level walking case, it can be observed that the estimated stairs descent stiffness is higher, similar to what was found for the stairs ascent case. This can be explained by the increased loading imposed at the knee joint during stairs descent, which requires a higher stiffness level at the articulation to ensure joint stability and minimize deflection under loading. On the other hand, swing phase stiffness during stairs descent is smaller than the baseline reference value provided by the normal cadence level walking. Reduced stiffness observed during swing phase can be attributed to the quasi-passive nature of the lower-limb swing phase motion during stairs descent.

As discussed previously, based on the locomotion type determined by the locomotion recognition module, the control parameters can be adjusted. Accordingly, the knee dynamic stiffness can be adjusted when the locomotion recognition module 110 detects stair ascent and/or stair descent.

Position Θ_(d) Compensation

Level Walking Equilibrium Trajectories

An equilibrium trajectory for level walking can be defined that will allow the knee joint dynamic response of the motorized POD 200 (see FIG. 2A) to match the kinematics of the normal human lower-limb. The knee elastic behavior coupled to the equilibrium trajectory or static calibration model can result in normal kinematic behavior of the knee-joint. In other words, the POD 200 can be calibrated so that the observed knee joint deflection of the POD 200 approximates the Winter Reference Trajectory. Furthermore, defining equilibrium trajectories based on the knee dynamic stiffness, knee joint expected loading, and desired kinematics behavior, such as Winter Reference Trajectory, aids in simulating impedance.

Referring to FIGS. 4A and 4B, there is shown the knee torque profile 402 (FIG. 4A) and angular position profile 404 (FIG. 4B) provided by Winter's data for level walking. It is generally accepted that the stance phase of the gait cycle represents approximately the first 50% to 60% of the gait cycle. The general equilibrium trajectory profile can be determined by looking at the knee torque profile during the stance phase of the gait cycle. First, it can be observed that the torque profile changes sign twice during the stance phase, going from positive to negative at the first point 406 and back to positive at the second point 408. Following these torque direction variations, the equilibrium trajectory can be set such that the torque variation results in corresponding deflections from the equilibrium trajectory. The first deflection can be a relative maximum deflection point (point A of FIGS. 4B, 5, and 6) and the second deflection can be a relative minimum deflection point (point A of FIGS. 4B, 5, and 6). It can further be determined that the approximate maximum/minimum torque points of the stance phase torque profile, identified as point A and point B, correspond to the first and second angular position bumps in the Winter Reference Trajectory profile (point A and point B of FIG. 6).

Referring again to FIG. 5, there is shown the level walking cyclogram 502 based on Winter's data, which provides the approximate torque-angle characteristic for the stance and swing phases of the gait cycle. The relation between torque and angular deflection during stance phase of the level walking gait cycle can generally be described as linear and is provided by an expression of the form: τ=K _(θ)·Δθ,  Equation 1

-   -   where

T is the torque affecting the spring-like element;

Δθ is the angular coordinates of deflection caused by the torque; and

K_(θ) is the relation between Δθ and τ, and is termed rotational stiffness.

With continued reference to FIGS. 4A and 4B, points A and B in FIGS. 4A and 4B correspond to points A and B in the stance phase of the Winter Natural Cadence Torque-Angle Cyclogram for level walking, as shown in FIG. 5. Furthermore, points A and B can be described as roughly being on the same torque-angle characteristic (i.e. stiffness) linear regression. In addition, the dynamic stiffness can be considered as being approximately uniform throughout the stance phase, and can be found as the slope of the linear regression line of the stance phase torque-angle characteristic.

Using the assumptions and results provided above, the location of the equilibrium trajectory for points A and B can be computed. From FIGS. 4A and 4B, the following information for points A and B can be calculated:

$\begin{matrix} {{\tau_{A} = {{- 0.60}\frac{Nm}{kg}}},{\theta_{A} = {21.700{^\circ}}},} & {{Equation}\mspace{14mu} 2} \\ {{\tau_{B} - {0.27\frac{Nm}{kg}}},{\theta_{B} = {7.725{{^\circ}.}}}} & {{Equation}\mspace{14mu} 3} \end{matrix}$

Using the dynamic stiffness value found from the linear regression of the early stance phase of torque-angle cyclogram for level walking (Regression 512 of FIG. 5), quantified as:

$\begin{matrix} {{K_{\theta} = {0.05563\frac{Nm}{{kg} \cdot \deg}}},} & {{Equation}\mspace{14mu} 4} \end{matrix}$

the equilibrium trajectory position, θ_(E), for points A and B can be computed using the relation provided by Equation 1. At point A, the equilibrium trajectory position is found from:

$\begin{matrix} {{\tau_{A} = {{K_{\theta} \cdot {\Delta\theta}_{A}} = {K_{\theta} \cdot \left( {\theta_{E} - \theta_{A}} \right)}}},} & {{Equation}\mspace{14mu} 5} \\ {{\theta_{E} = {\frac{\tau_{A}}{K_{\theta}} + \theta_{A}}},} & {{Equation}\mspace{14mu} 6} \end{matrix}$

which leads to a final value of: θ_(E)=10.91°.  Equation 7

Repeating the same procedure at point B:

$\begin{matrix} {{\tau_{B} = {{K_{\theta} \cdot {\Delta\theta}_{B}} = K_{\theta}}}{{\cdot \left( {\theta_{E} - \theta_{B}} \right)},}} & {{Equation}\mspace{14mu} 8} \\ {{\theta_{E} = {\frac{\tau_{B}}{K_{\theta}} + \theta_{B}}},} & {{Equation}\mspace{14mu} 9} \end{matrix}$

which leads to a final value of: θ_(E)=12.57°.  Equation 10

From these computed values, it can be determined that the equilibrium trajectory during the stance phase can be approximated by a single amplitude. In one embodiment, the equilibrium trajectory is constant, or approximately constant, during at least a portion of the stance phase of a gait cycle. In another embodiment, the equilibrium trajectory is constant, or approximately constant, during the entire stance phase of the gait cycle. For example, equilibrium trajectory amplitudes can be 12°, or approximately 12°, during at least a portion of the stance phase of a gait cycle, or during the entire stance phase of the gait cycle. Other amplitudes can be used as well as a variable amplitude during the stance phase without departing from the spirit and scope of the description.

Referring now to FIG. 6, there is shown a plot of the equilibrium trajectory profile 602 compared to the Winter Reference Trajectory profile 604 provided by Winter kinematics data. As illustrated, the equilibrium trajectory profile 602 differs from and does not approximate normal knee joint kinematic behavior and/or the Winter reference trajectory profile 604 during at least a portion of the stance phase of the gait cycle. In one embodiment, the equilibrium trajectory profile 602 does not approximate normal knee joint behavior during the entire stance phase.

The Winter reference trajectory profile 604 gives the desired knee joint deflection position, Θ_(d), during a gait cycle. The equilibrium trajectory profile 602 gives the compensated desired knee joint deflection position, Θ_(d-C), during a gait cycle. The difference, Δθ, between the desired position, Θ_(d), and the compensated desired position, Θ_(d-C), can be computed using Winter reference trajectory profile 604 and the equilibrium trajectory profile 602. The equilibrium trajectory profile 602 and the compensated desired position Θ_(d-C) can further be described as input used to set the appropriate stiffness of the knee-joint so that the observed angular deflection caused by the expected torque approximates Winter reference trajectory profile 604 and the desired position Θ_(d). In one embodiment, it is assumed that Θ_(d-C)=θ_(E)=12° for the complete stance phase of the level walking gait cycle. However, other values for Θ_(d-C) can be used. Furthermore, Θ_(d-C) can be configured to vary during the stance phase.

Stairs Ascent Equilibrium Trajectories

Stairs ascent is another locomotion task frequently encountered in everyday life. To increase the synergy between the user and the motorized POD 200, an equilibrium trajectory for this locomotion task can be defined based on the expected knee joint loading and knee joint impedance or stiffness.

The equilibrium trajectories can be determined by observing the stairs ascent kinematics. Referring to FIGS. 7A and 7B, showing the knee torque profile 702 (FIG. 7A) and angular position profile 704 (FIG. 7B) provided by Winter's data for the stairs ascent, some gait cycle parameters can be defined to facilitate further analysis. The weight acceptance phase is included between the points C and D, and the stance phase of the stairs ascent gait cycle is generally known to last about 60% to 65% of the gait cycle, beginning with the weight acceptance phase. In one embodiment, it can be assumed that the stance phase duration represents about 40% of the gait cycle and that the knee joint dynamic stiffness is provided from the slope of the torque-angle characteristic, computed for the weight acceptance period that is considered to last from heel strike to maximum torque level. For the torque and knee angular position profiles presented in FIGS. 7A and 7B, this represents approximately the 0 to 16% section of the gait cycle.

Plotting the curves 702, 704 provided in FIGS. 7A and 7B against one another generates the torque-angle cyclogram 802 of FIG. 8. As mentioned earlier, the slope of the weight acceptance linear regression line 810 provides the value of the dynamic stiffness that is assumed to hold for the complete stance phase. In order for the knee motion to occur during stance phase of stair ascent, it is assumed that the stiffness value is maintained and the equilibrium point is moved, while elastic behavior of the knee joint is still allowed along the slope of the dynamic stiffness. In the specific context of having an amputee climb stairs using the motorized POD 200, adopting high impedance behavior for the weight acceptance can facilitate the improved completion of the task by providing increased stability and robustness. Moreover, the user can also get a better feeling of the foot-ground interaction by defining the knee joint impedance to the weight acceptance phase value. If the selected impedance is too high, then the POD 200 can affect the overall synergy between the user and the knee by initiating motion before weight transfer is completed. If the selected impedance is too low, the POD 200 can cause the user to feel as though the knee will buckle.

For level walking, the equilibrium trajectory can be defined with constant amplitude during the stance phase of the gait cycle based on the computation of the deflection levels at the maximum torque points. For stair ascent, a slightly different approach is adopted. In one embodiment, instead of computing a few points and making assumptions on the general shape of the trajectory, computations are performed for all the kinematics data points corresponding to the stance phase of the gait cycle.

Following the mathematics introduced above for the level walking case, the equilibrium trajectory can be found for all kinematics data points for stair ascent using the following relationship:

$\begin{matrix} {\theta_{E} = {\frac{\tau_{W}}{K_{\theta}} + \theta_{W,}}} & {{Equation}\mspace{14mu} 11} \end{matrix}$

where

τ_(W) and θ_(w) are respectively representing the knee torque and knee angular position provided by Winter's data; and

θE is the actual equilibrium trajectory angular position.

K_(θ) is the knee joint dynamics stiffness computed from the slope of the torque-angle characteristic during weight acceptance. For stairs ascent, this value is found to be approximately

$0.07143\mspace{11mu}\frac{Nm}{{kg} \cdot \deg}$ from Table 3.

Using the relationship provided by Equation 11, the equilibrium trajectory location for the kinematics data points corresponding to the first 40% of the gait cycle, as represented by FIGS. 7A and 7B, can be computed. FIG. 9 illustrates the equilibrium trajectory 902, as computed, plotted against Winter's kinematics reference 904, from which it is possible to observe that the equilibrium trajectory generated displays an extension position offset with respect to the Winter reference trajectory 904. Furthermore, during at least a portion of the stance phase of the gait cycle the equilibrium trajectory 902 differs from and does not approximate normal knee joint kinematic behavior and/or the Winter reference trajectory 904.

The objective of the locomotion task is to lift the weight of the user to climb a staircase and overcome the knee joint limited stiffness. To accomplish this objective the knee joint can be “pulled” higher (i.e., in extension) than the desired kinematics reference so that the final knee joint position more closely approximates the desired kinematics reference.

Stairs Descent Equilibrium Trajectories

Stairs descent, like stairs ascent, is another locomotion task frequently encountered in everyday life. While being complementary to the stairs ascent task, some interesting similarities between the two tasks are also observed. A voluntary movement superposed to an elastic behavior also characterizes the stairs descent stance phase.

Again, an equilibrium trajectory can be established such that the use of a constant stiffness throughout the stance phase of the stairs descent generates a knee joint position response that generally follows the kinematics reference signal selected. Similar to the stairs ascent locomotion task, stairs descent stance phase is characterized by a weight acceptance elastic behavior, this time followed by a controlled lowering phase where both an elastic behavior and voluntary motion can be observed at once.

FIGS. 10A and 10B illustrate the knee torque profile 1002 (FIG. 10A) and angular position profile 1004 (FIG. 10B) provided by Winter's data for stairs descent. Using the profiles 1002, 1004, illustrated in FIGS. 10A and 10B, it is possible to define some gait cycle parameters. In contrast to FIGS. 4A, 4B, 7A, and 7B, FIGS. 10A, 10B, 11, and 12 illustrate a gait cycle with the swing phase first, followed by the stance phase.

The weight acceptance phase is included between the points E and F in the stance phase of the stairs descent gait cycle is generally known to last about 60% to 65% of the gait cycle, beginning with the weight acceptance phase.

Knee dynamic stiffness can be computed from the weight acceptance torque-angle characteristic and applied to the stance phase of the gait cycle. Referring to FIG. 11, there is shown the torque-angle cyclogram 1102 based on Winter's stairs descent data. The cyclogram 1102 is used to compute the weight acceptance phase dynamic stiffness. Computing the slope of the linear regression line 1108 of the torque-angle characteristic shown in FIG. 11 leads to a knee joint angular stiffness of approximately

$0.07143\mspace{11mu}\frac{Nm}{{kg} \cdot \deg}$ which is equal to the value for stairs ascent. As for stairs ascent, it is assumed that the weight acceptance phase is the only purely elastic phase of the gait cycle. The remaining part of the stance can be characterized by the same type of elastic behavior (i.e., dynamic stiffness). Similar to stair ascent, the equilibrium point can be moved in order to control the lowering of the body centre of mass. The weight acceptance, high impedance can be maintained over the whole stance phase since the resulting knee joint dynamic behavior is expected to be more stable and provide a better feeling of the foot-ground interaction to the prosthesis user.

Applying Equation 11 to the torque values, Winter's data points illustrated in FIG. 10A, and the dynamic stiffness value specified above generates the equilibrium trajectory 1202 presented in FIG. 12.

The equilibrium trajectory 1202 shows an offset with respect to Winter's trajectory 1204 for the complete stance phase, due to the amplitude of the perturbation torque, such as user body mass for example, over that complete gait phase. Furthermore, during at least a portion of the stance phase of the gait cycle the equilibrium trajectory 1202 differs from and does not approximate normal knee joint kinematic behavior and/or the Winter reference trajectory 1204. As it was observed for the stairs ascent equilibrium trajectory, the equilibrium trajectory 1202 displays an angular position extension offset in order to “pull” the thigh upwards and support the whole body weight against the effects of gravity. This offset can compensate for the deflection caused by the torque imposed at the articulation and the non-infinite stiffness of the joint.

Calibration Model

To facilitate the motorized POD 200 configuration and reduce set-up time, the basic controller gain values, i.e. K_(P) and K_(D), can be correlated to user physiological characteristics. In this way, the prosthetist is provided with a framework from which to start the adjustment and tuning of the motorized POD device 200.

Proportional Gain

The controller compensated proportional gain, i.e. K_(P-C), is the controller term that affects the control signal based on the position error, which is the difference between the equilibrium position and the actual system position. This specific parameter is termed proportional gain since it actually increases the control signal proportionally to the measured error signal. Hence, as the position error increases, the control signal is proportionally increased. This generates an overall behavior similar to spring stiffness, since the control signal is generally expressed as a generalized force and is found proportional to the position error amplitude.

The basic proportional gain value K_(P-C) can be set-up at system initial configuration based on the user body mass (including the motorized POD 200), as provided to the system by the trained professional performing the system set-up. The proportional gain K_(P-C) value can be adjusted to the value corresponding to the normal cadence level walking physiological knee joint dynamic stiffness, as provided in Table 1. Nevertheless, since the knee joint is actually powered using a linear actuator and controlled using an actuator space position controller, the joint space stiffness found in Table 1 can be expressed in actuator coordinates, such that the resulting stiffness value can be directly used in the low-level control law.

To convert the joint space stiffness values found in Table 1 to actuator space the following definition can be used:

$\begin{matrix} {{K_{A}\left\lbrack \frac{N}{m \cdot {kg}} \right\rbrack} = {{K_{\theta}\left\lbrack \frac{N}{\deg \cdot {kg}} \right\rbrack} \star {{f\left( {\theta,\tau,\ldots}\; \right)}.}}} & {{Equation}\mspace{14mu} 12} \end{matrix}$

where, K_(A) and K_(θ), are the equivalent actuator and joint stiffness, respectively.

To relate the joint and actuator spaces stiffness, as expressed by Equation 12, both the kinematics and kinetics relationships can be merged. Use of a linearizing term based on the reflected inertia at the actuator and allowing the modification of the controller gains based on the actual actuator position can provide a desired linearization. In that context, the static calibration definition is oriented towards providing a reasonable estimate of the knee joint stiffness. The conversion factor between both coordinate system stiffness at the system neutral point can be computed and it can be inferred that the linearization scheme compensates over the remaining motion range.

For the motorized POD 200 system definition, the conversion factor can be computed for the position corresponding to the lowest equivalent mass at the actuator (i.e., unitary normalized equivalent mass) as illustrated in FIG. 13. For the assumptions provided above, and by expressing K_(A) as the compensated controller proportional gain K_(P-C), Equation 12 reduces to:

$\begin{matrix} {{K_{P - C}\left\lbrack \frac{N}{m \cdot {kg}} \right\rbrack} = {{K_{\theta}\left\lbrack \frac{N}{\deg \cdot {kg}} \right\rbrack} \star {{\Omega\left\lbrack \frac{N \cdot \deg}{m \cdot {Nm}} \right\rbrack}.}}} & {{Equation}\mspace{14mu} 13} \end{matrix}$

where

Ω is the average conversion factor found for the position specified above.

The analysis of the equivalent mass linearization scheme as a function of joint angle degree is illustrated in FIG. 13. Further analysis leads to an unitary normalized equivalent mass point located at 49.9565°, following the usual convention (i.e., knee flexion is a positive angle with origin at full extension). For this last point of the motion range, the following equivalence are found from the kinematics and static analysis: 1 Nm=−20.0619N, and  Equation 14 1°=0.0009 m.  Equation 15

Using the above average equivalence, the average conversion factor can be calculated:

$\begin{matrix} {\Omega = {{22291\left\lbrack \frac{N \cdot \deg}{m \cdot {Nm}} \right\rbrack}.}} & {{Equation}\mspace{14mu} 1\; 6} \end{matrix}$

Equation 16 can be used to express the values found in Table 1 in actuator coordinates, as well as in controller gains. Multiplying the early stance stiffness value found in Table 1 with the conversion factor provided by Equation 16 leads to the following static calibration relationship:

$\begin{matrix} {{K_{P\text{-}C}\left\lbrack \frac{N}{M} \right\rbrack} = {{1240.05\left\lbrack \frac{N}{m \cdot {kg}} \right\rbrack}*{{M_{B}\lbrack{kg}\rbrack}.}}} & {{Equation}\mspace{14mu} 17} \end{matrix}$

where

K_(P-C) is the compensated controller proportional gain value;

M_(B) is the body mass of the prosthesis user; and

$1240.05\left\lbrack \frac{N}{m \cdot {kg}} \right\rbrack$ is the normal cadence level walking early stance phase dynamic stiffness value, found in Table 1 and expressed in the actuator coordinates system. Derivative Gain

The controller derivative gain, i.e. K_(D), is the controller term that affects the controller output based on the velocity of the error signal, which is the variation of the error signal between two consecutive discrete samples. Assuming that the closed-loop system behaves like a second-order system, this controller gain is also termed damping, since, in a second-order system, damping is seen proportional to the input signal velocity.

The calibration value of the controller derivative gain can be determined based on the desired system behavior. In selecting the calibration procedure, the ability to modulate the knee joint stiffness in order to accommodate a wider range of user body mass (including the motorized POD 200) can be taken into account. However, the knee joint dynamic behavior does not vary with mass and the controller is responsible to enforce the dynamic behavior.

From control theory, it is known that a second-order system dynamic behavior is defined by the controller gains coupled to the system inherent dynamic properties. The system dynamic properties resulting of the combination of both elements are known to be related through theoretical relations. Using these relations, the controller derivative gain can be computed based both on the proportional gain value found from the torque-angle cyclogram and the desired system behavior.

Second-order systems are uniquely defined by their stiffness k, mass m, and damping ratio ζ, which are related through the following relations. The natural undamped frequency of a mass-spring second-order system is given by:

$\begin{matrix} {\varpi_{N} = {\sqrt{\frac{k}{m}}.}} & {{Equation}\mspace{14mu} 18} \end{matrix}$

The system critical damping value associated with the behavior found at the border between oscillatory and non-oscillatory behavior is found from:

$\begin{matrix} {{C_{C} = {2m\sqrt{\frac{k}{m}}}},} & {{Equation}\mspace{14mu} 19} \end{matrix}$

while the damping ratio is found as the ratio of the actual system damping to the critical damping:

$\begin{matrix} {\zeta = {\frac{C}{C_{C}}.}} & {{Equation}\mspace{14mu} 20} \end{matrix}$

Assuming that the knee joint, or actuator, space damping is caused both by the derivative gain of the controller and the natural damping found in the mechanical linkages, the actual actuator space damping can be approximated using the following relation:

$\begin{matrix} {C = {\frac{K_{D\text{-}C}}{{1/\Delta}\; t}.}} & {{Equation}\mspace{14mu} 21} \end{matrix}$

where

K_(D-C) is the actual compensated controller derivative gain, found from the experimental tuning of the controller gain.

The control gains can be tuned to reach system behavior that sufficiently meets desired performance levels. It can then be inferred that the controller imposed damping, superposed to the constant natural system damping, provides the desired damping level for the system (i.e., system dynamic response). The desired amount of controller imposed damping (i.e., K_(D-C)) can then be quantified by specifying the system desired damping ratio. The amount of controller imposed damping can be used to compute the controller gain given the proportional gain. A system characterized by a damping ratio of: ζ_(D)=0.734  Equation 22

can generate a satisfactory knee joint behavior throughout the operational range of the motorized POD 200. Other values can be used without departing from the spirit and scope of the description. Defining the controller derivative gain static calibration value can then be expressed as defining a system damping value such that:

$\begin{matrix} {{K_{D\text{-}C}\left\lbrack \frac{{N \cdot \Delta}\; t}{m} \right\rbrack} = {{f\left( {K_{A},M_{B},\zeta_{D}} \right)}.}} & {{Equation}\mspace{14mu} 23} \end{matrix}$

Using the relations provided by Equations 19 to 22, the general relationship expressed by Equation 23 can be specified as:

$\begin{matrix} {{C = {{\zeta \cdot C_{C}} = {{\zeta_{D} \cdot 2}m\sqrt{\frac{k}{m}}}}},} & {{Equation}\mspace{14mu} 24} \end{matrix}$

where

m is the actual system mass (i.e., inertia) expressed in actuator coordinates;

ζ_(D) is the desired damping ratio; and

k is the actual actuator stiffness (i.e., controller proportional gain) found from the static calibration procedure depicted above.

Substituting the stiffness value found in this last relation by the body mass normalized value defining the proportional gain calibration introduces both the K_(A) and M_(B) terms in Equation 24. Performing this last substitution leads to:

$\begin{matrix} {{C = {{\zeta_{D} \cdot 2}m{\sqrt{\frac{K_{A}}{m}} \cdot \sqrt{M_{B}}}}},} & {{Equation}\mspace{14mu} 25} \end{matrix}$

which represents the continuous time equivalent damping at the actuator, expressed in actuator coordinates. Finally, this last damping value relates to the discrete-time controller derivative gain through:

$\begin{matrix} {{{K_{D\text{-}C}\left\lbrack \frac{{N \cdot \Delta}\; t}{m} \right\rbrack} = {{\frac{\zeta_{D}}{\Delta\; t} \cdot 2}m{\sqrt{\frac{K_{A}}{m}} \cdot \sqrt{M_{B}}}}},} & {{Equation}\mspace{14mu} 26} \end{matrix}$

where Δt is the controller sampling period duration in seconds and allows the conversion of the continuous time domain damping value to its corresponding discrete-time equivalent controller gain. The system mass, m, is found from the analysis of the system dynamics and is taken as the normalization value of the linearization relation previously established. In the illustrative embodiment of the motorized POD 200, this value is set to 75 kg and it is assumed that the linearization procedure used with the controller allow the use of this single value in order to define the controller derivative gain. However, other values can be used without departing from the spirit and scope of the description.

It is now possible to formulate the derivative gain calibration relation itself, based on the following parameters:

$\begin{matrix} {{\frac{1}{\Delta\; t} = {1320\mspace{14mu}{Hz}}},} & {{Equation}\mspace{14mu} 27} \\ {{m = {75\mspace{14mu}{kg}}},} & {{Equation}\mspace{14mu} 28} \\ {{K_{A} = {1240.05\;\frac{N}{m \cdot {kg}}}},} & {{Equation}\mspace{14mu} 29} \end{matrix}$

and the desired damping ratio provided by Equation 22, which leads to the following calibration relation:

$\begin{matrix} {{K_{D\text{-}C}\left\lbrack \frac{{N \cdot \Delta}\; t}{m} \right\rbrack} = {{591029.8\left\lbrack \frac{{N \cdot \Delta}\; t}{m \cdot \sqrt{kg}} \right\rbrack}*{\cdot {\sqrt{M_{B}\lbrack{kg}\rbrack}.}}}} & {{Equation}\mspace{14mu} 30} \end{matrix}$

Relations provided by Equation 17 and Equation 30 are forming what is herein referred to as the static calibration of the motorized POD system, allowing to link the impedance simulating controller gains to the user body mass in order to achieve the desired system behavior.

Dynamic Gain Tuner

Referring to FIG. 14, there is shown a block diagram of an alternative embodiment of the impedance simulating motion controllers 100 of FIG. 2A. The impedance simulating motion controller 1100 of FIG. 14 is of a structure similar to that of the impedance simulating motion controller 100 of FIG. 2A with a dynamic gain tuner 135 interposed between the dynamic trajectory compensator 125 and the proportional derivative position controller 130. Similarly, FIG. 15 shows a block diagram of an alternative embodiment of the impedance simulating motion controller 100′ of FIG. 2B. The impedance simulating motion controller 1100′ of FIG. 15 being of a structure similar to that of the impedance simulating motion controller 100′ of FIG. 2B with a dynamic gain tuner 135 interposed between the equilibrium trajectory generator 120 and the proportional derivative position controller 130.

In a further alternative embodiment, illustrated in FIG. 16, the dynamic gain tuner 135 may be used independently of the dynamic trajectory compensator 125 of the impedance simulating motion controller 100 (see FIG. 2A) or the compensated lookup table 122′ of the impedance simulating motion controllers 100′ (see FIG. 2B), resulting in motion controller 2100.

The general objective of the dynamic gain tuner 135 is to dynamically modify the compensated control parameters received from the dynamic trajectory compensator 125, or to modify the control parameters received from the equilibrium trajectory 120, to generate tuned control parameters. Thus, in one embodiment the dynamic gain tuner 135 modifies the compensated proportional K_(P-C) and derivative K_(D-C) gains of the dynamic trajectory compensator 125 (in the case of the impedance simulating motion controller 1100 of FIG. 14) to generate the tuned control parameters. In another embodiment, the dynamic gain 135 modifies the proportional and derivative gains of the equilibrium trajectory generator 120 (in the case of the impedance simulating motion controller 1100′ of FIG. 15) to generate the tuned control parameters. The dynamic gain tuner can be configured to modify the proportional and derivative gains, or the compensated proportional and derivative gains, in real-time (e.g. during regular joint operation, such as walking or other movement, or during and between gait cycles) such that the motorized POD 200 position response follows the general profile provided by a kinematics reference signal, regardless of changes to the user's characteristics. With regard to the motion controller 2100 of FIG. 16, the general objective of the dynamic gain tuner 135 is to modify the proportional gain K_(P) and derivative gain K_(D) received from the equilibrium trajectory generator 120. The dynamic gain tuner 135 can use the data received directly from the sensors 142 and the locomotion data received from the locomotion recognition module 110 to determine how to modify the proportional gain K_(P) and derivative gain K_(D) received from the equilibrium trajectory generator 120. In one embodiment, the sensor data and locomotion data comes directly from the sensors 142 and the locomotion recognition module 110. In another embodiment, the sensor data and the locomotion data is received by the dynamic gain tuner 135 via the equilibrium trajectory generator 120 and/or the dynamic trajectory compensator 125. Furthermore, using the data from the locomotion recognition module 110, the dynamic gain tuner 135 can determine whether the POD is in a stance phase. If the POD is not in a stance phase, the dynamic gain tuner 135 can ignore the sensor data. If the POD is in a stance phase, the dynamic gain tuner 135 can use the sensor data to determine how to tune the control parameters.

In other words, the dynamic gain tuner 135 can be represented as a criteria-based optimization process, which adjusts the knee joint behavior of the motorized POD 200 in order to approximate, or match, a predefined reference value. The dynamic gain tuner 135 can perform this optimization process during, regular joint operation, such as between gait cycles while the user is moving. In other words, the user does not need to stop to calibrate the POD in order for the dynamic gain tuner 135 to properly tune the control parameters. The dynamic gain tuner can automatically tune the control parameters while the POD is in use (e.g., when the POD user is walking). The tuning can occur between gait cycles during regular joint operation, for example while the user is walking or otherwise moving.

Thus, in one embodiment the POD can be calibrated specifically for a user based on the user's physiological characteristics, such as body weight. In this manner, the controller can compensate for the user's physiological characteristics without having to make the calculations in real-time, i.e. while the user is actively using the POD. The dynamic trajectory compensator 125 can be used for this purpose. Alternatively, the compensated values, or compensated control parameters, can be stored in a lookup table, similar to the compensated lookup table 122′, illustrated in FIGS. 2 and 15. In this embodiment, the dynamic trajectory compensator can be removed, as illustrated in FIG. 2.

Furthermore, when a user carries an object, the weight of the object can affect the knee deflection. Without additional compensation for the added weight, the gait of the user can be adversely affected. The dynamic gain tuner 135 can be used to modify the gain values in order to account for the additional weight of the object, which is not compensated for by the lookup table 122′ or the dynamic trajectory compensator 125. To accomplish this task, the dynamic gain tuner 135 can monitor the difference between the expected deflection value and the measured deflection value and tune the proportional gain K_(P) and derivative gain K_(D) to approximate, or match, the measured deflection with a predefined reference value. Alternatively, the dynamic gain tuner 135 can be used to compensate for both the weight of the object and the user's weight and can calculate the desired gain values based on real-time measurements. In this embodiment, the POD can be used without prior user-specific calibration, and the dynamic gain tuner 135 can adjust the control parameters based on the real-time physiological characteristics of the user and/or the gain scaling factor. Thus, in one embodiment, the dynamic trajectory generator 125 can be removed.

In one embodiment, the tuning by the dynamic gain tuner 135 can be performed at an integer multiple of the impedance simulating motion controller 1100, 1100′ and controller 2100 sampling frequency, hence reducing the computational burden associated with this specific task.

Correction of the compensated proportional K_(P-C) and derivative K_(D-C) gains (or proportional K_(P) and derivative K_(D) gains) can be performed at every gait cycle by applying a gain scaling factor K_(C) based on the computation of the maximal measured deflection value from an equilibrium trajectory found during the knee joint loading region of the stance phase gait cycle. Computing the gain scaling factor K_(C) correction once every gait cycle allows for the modeling of the expected deflection as a function of the gait cadence and, therefore, does not require the generation of the kinematics reference value for all sampling instances associated with the gait cycle.

As previously mentioned, computation of the gain scaling factor K_(C) can be calculated based on the performance of the motorized POD 200 as measured during the stance phase of the level-walking gait cycle. FIG. 17 defines the dynamic tuning parameters for the position response during level walking. Three quantities are identified: the expected deflection 28, the maximal measured deflection 30 and the tolerance.

The expected deflection 28 represents the normal, or expected, amount of deflection caused by the dynamic loading of the joint as the foot comes into contact with the ground surface and the overall dynamic and static body weight is transferred from one leg to the other. This represents the performance criteria for what is considered a normal gait stance phase and can be computed from standard kinematics reference data 34 and the specific equilibrium trajectory 38.

The maximal measured deflection 30 represents performance of the motorized POD 200 in the actual operational context. The maximal measured deflection 30 is quantified over the whole stance phase where the measured response 36 of the motorized POD 200 is superior to the equilibrium trajectory 38 (i.e., second overshoot region of the system response). This definition of the stance loading region assumes that the compensated proportional K_(P-C) and derivative K_(D-C) gains (or proportional K_(P) and derivative K_(D) gains) have been preliminary adjusted to physically relevant values, which allow the observation of a typical motorized POD 200 response 36. Although described as a maximal measured deflection, the measured deflection need not be a maximum point, but can be some other predefined point at which measurements are taken.

The tolerance is used to define a tolerance zone 32, around the expected deflection 28 where the motorized POD 200 is judged to be performing adequately. The upper and lower bounds of the tolerance zone can be referred to as tolerance levels. The combination of the expected deflection 28 with the tolerance, expressed as a percentage of tolerance, generates an envelope of valid motorized POD 200 position responses in which the tuning process of the dynamic gain tuner 135 can be inhibited. The tolerance parameter is used in order to relax the expected deflection 28 stiffness tracking by the dynamic gain tuner 135, since the expected deflection 28 for a given cadence, as well as the kinematics reference data 34 from which this criteria was computed, may not be representative of the gait style and characteristic of a specific user of the motorized POD 200. In one embodiment, when a measured deflection value falls within the tolerance zone 32, the controller does not attempt to modify, or tune, the control parameters. However, if the measured deflection falls below the lower tolerance level or above the upper tolerance level, the control parameter can be modified and/or tuned by the dynamic gain tuner 135, as described in greater detail above.

Since Winter's kinematics data is used as the kinematics reference data 34 to compute the expected deflection 28, the tolerance is used to represent the statistical spread of the normalized data. The tolerance is defined as a strictly positive quantity and the boundaries of the tolerance envelope, or zone 32, are determined by adding and subtracting the tolerance multiplied by the expected deflection 28 from the expected deflection 28 i.e. tolerance zone=expected deflection±tolerance*expected deflection. In one embodiment, the control parameters are modified and/or tuned when the measured deflection values fall below, or exceed, predefined tolerance levels, or are outside the tolerance zone 32.

Expected Deflection

As previously mentioned, the expected deflection is based on a standard kinematics reference. For instance, Winter's kinematics data can be used in order to define the profile of the expected deflection. However, it is to be understood that data other than Winter's kinematics data can also be used to define the profile of the expected deflection without departing from the spirit and scope of the description. Referring to FIG. 18, there is shown the selected equilibrium trajectory 40 together with the kinematics reference position trajectories for slow 42, normal 44 and fast 46 gait cadences. By analyzing the various plots of FIG. 18, the expected deflection as a function of the gait cadence 42, 44 and 46 can be computed.

Using the plots from FIG. 18 and setting the slow gait cadence at 85 steps/min, the normal gait cadence at 105 steps/min and the fast gait cadence at 125 steps/min, Table 5 is obtained.

TABLE 5 Knee Joint Expected Deflections for Winter's Cadences Cadence Expected Deflection [steps/min] [deg] 85 4.2 105 9.67 125 13.24

Using the numerical data provided in Table 5, the knee joint expected deflection as function of the gait cadence can be plotted to extract a relationship between both variables. Expressing the joint deflection as a function of the gait cadence is sustained by the fact that, for a given body weight, knee joint dynamic loading imposed by upper-body inertia increases with cadence. It then seems natural to relate both quantities using a simple relation or model. Referring to FIG. 19, there is shown a plot of the expected deflection vs. cadence for the data presented in Table 5, which are identified as points 48 a, 48 b and 48 c.

From FIG. 19, it can be observed that the data points 48 a, 48 b and 48 c roughly define a linear relation between the expected deflection and the cadence. A linear regression of the data points provided from the analysis of Winter's data for the 85 to 125 steps/min cadence range, i.e. points 48 a, 48 b and 48 c on FIG. 19 can be performed. The resulting linear regression line 50 can be expressed numerically as:

$\begin{matrix} {{y\left\lbrack \deg \right\rbrack} = {{0.226 \times {x\left\lbrack \frac{steps}{\min} \right\rbrack}} - {14.693.}}} & {{Equation}\mspace{14mu} 31} \end{matrix}$

The 85 to 125 steps/min cadence range is defined by Winter's data, which is provided for three discrete cadence values: 85, 105, and 125 steps/min. Outside of this range, expected deflection values can be saturated to a constant value corresponding to the last value computed in the cadence range. However, this definition of the expected deflection outside the known cadence range is not necessary, and other variants can be used. For example, measured kinematics behavior of the knee joint in the POD system operational cadence range of a user can be used to establish a more precise relation between the deflection under loading and the measured gait cadence for the complete cadence range of that user. Alternatively, additional data, other than Winter's data, can be used to determine an appropriate relationship between the deflection under loading and the measured gait cadence.

Tolerance

The tolerance parameter affects the performance and convergence speed of the tuning process of the dynamic gain tuner 135. To reflect the inter-subject variability included in Winter's kinematics data using the tolerance parameter, Winter's kinematics data standard deviation can be used to quantify the amplitude of a physically-relevant tolerance parameter. As mentioned previously, other kinematics data, other than Winter's kinematics data can be used.

The tolerance required in order to reproduce the one standard deviation boundaries found in Winter's data can be computed using:

$\begin{matrix} {{{tolerance}\lbrack\%\rbrack} = {\frac{\left( {\left( {\left( {\theta_{W} + \sigma_{\theta\; W}} \right) - \theta_{EP}} \right) - y} \right)\left\lbrack \deg \right\rbrack}{y\left\lbrack \deg \right\rbrack}*100}} & {{Equation}\mspace{14mu} 32} \end{matrix}$

where

θ_(W) is Winter's mean angle at maximum deflection under loading;

σ_(θW) is the corresponding standard deviation;

θ_(EP) is the equilibrium point position; and

y is the expected deflection computed from Equation 31.

Performing the computation for the values provided in Table 6 leads to the tolerance values specified in Table 7.

TABLE 7 Tolerance Values Computed from Winter's Kinematics Data One σ Boundaries Winter's Equilibrium Expected Cadence Mean Winter's σ Point Deflection Tolerance steps/min degree degree degree degree % 85 16.2 +6.73 12 4.52 141.8 −6.73 −155.97 105 21.7 +5.34 9.04 66.37 −5.34 −51.77 125 25.2 +4.94 13.56 33.78 −4.94 −39.09

From Table 7, it can be observed that the tolerance values are taking both positive and negative signs. A positive tolerance value in the table represents a tolerance level located farther than the expected deflection, while a negative tolerance value in the table represents a tolerance level located somewhere under the expected deflection. The tolerance values found using the data provided in Table 7 are observed to decrease with increasing gait cadence, starting from a very high value (i.e., −155%) for the slow cadence to 35%-40% for the fast gait cadence case. It can be observed from the data displayed in Table 7 that the tolerance value can be expressed as a function of the gait cadence, similarly to what was done above for the expected deflection parameter. Alternatively, additional or other information can be used to select the tolerance levels.

Each individual possess a unique gait characteristics, which explains the magnitude of the standard deviation found when averaging kinematics data through a group of different subjects. Defining the expected deflection values from Winter's average kinematics data generates a reference gait pattern that may not be suited to the unique gait characteristics of the user of the motorized POD 200.

The tolerance parameter can be selected in such a way that the dynamic gain tuner 135 does not strictly attempt to enforce a position response more or less corresponding to Winter's kinematic gait characteristics. In one embodiment, a tolerance value specified in the 10% to 50% range can be used. Alternatively, the value of the tolerance parameter, as well as its effects on the performance of the motorized POD 200, can be assessed experimentally for a specific motorized POD 200, or can be calibrated for a specific user as an initial configuration parameter.

Maximum Deflection

The compensated proportional K_(P-C) and derivative K_(D-C) gains (or proportional K_(P) and derivative K_(D) gains) and the gain scaling factor K_(C) can be determined such that the position response of the motorized POD 200 follows the characteristic pattern illustrated in FIG. 17, which is composed of a late swing inertial overshoot of the equilibrium trajectory 51, a stance phase under loading equilibrium trajectory overshoot 52, and a late stance elastic return overshoot of the trajectory 53. To detect and measure the maximum deflection 30, the characteristics of both the position response 36 and the equilibrium trajectory 38 can be used in order to identify the occurrence of each overshoot region 51, 52 and 53 and measure the corresponding maximum deflection 30. This can be accomplished using an overshoot detection and deflection quantification procedure implemented as a state machine where overshoot state transitions are triggered by the detection of the deflection signal zero crossing. The maximum deflection value from the equilibrium trajectory measured during the stance phase can be used to calculate the gain scaling factor.

Computation of the Gain Scaling Factor K_(C)

Referring to FIGS. 13, 14 and 15, Using the equilibrium trajectory 38 (see FIG. 17), the dynamic gain tuner 135 can be described as a position regulator for the stance phase of the gait cycle, where dynamic trajectory compensator 125 or equilibrium trajectory generator 120 gains (i.e. compensated proportional K_(P-C) and derivative K_(D-C) gains or proportional K_(P) and derivative K_(D) gains, respectively) are specified as input and position response deflection from its equilibrium point is found as output. Assuming that for certain environmental and operational contexts (i.e. gait cadence, gait style, etc.), the perturbation force profile affecting the motorized POD 200 behavior is relatively periodic, the system can be modeled in a quasi-static manner with a relation of the form of Equation 1, i.e., τ=K_(θ)·Δθ.

Using this system description, the dynamic gain tuner 135 tracks, in a relatively loose manner, the expected deflection value by varying the gain scaling factor K_(C) as external perturbation torque amplitude changes with gait dynamics, user's body mass, or actual payload nature.

Defining the tuning process of the dynamic gain tuner 135 can include applying the relationship between the measured deflection and correction factor (i.e. gain scaling factor K_(C)) to the compensated proportional K_(P-C) and derivative K_(D-C) gains (or proportional K_(P) and derivative K_(D) gains). Using the model expressed by Equation 1 for this specific relation, it can be observed that the system can be linear in terms of correction factor and measured deflection. Hence, modifying the compensated proportional K_(P-C) and derivative K_(D-C) gains (or proportional K_(P) and derivative K_(D) gains) by a proportion equivalent to the deficit or excess of measured deflection with respect to the expected deflection value can provide a sufficient correction. The gain scaling factor K_(C) can be computed as a function of the difference between the measured and expected deflection value, or mathematically expressed as: K _(C) =F(Δθ−Δθ_(SP)).  Equation 33

where

Δθ is the difference between the measured position and the equilibrium position; and

Δθ_(SP) is the difference between the kinematics reference and the equilibrium position.

The current system state of the motorized POD 200 at any point in time when the dynamic gain tuner 135 is used, can be defined by the measured deflection amplitude as well as the current value of the compensated proportional K_(P-C) and derivative K_(D-C) gains (or proportional K_(P) and derivative K_(D) gains) and gain scaling factor K_(C). The tuning process of the dynamic gain tuner 135 can then be defined as a recursive process making use of the system state historic information. Moreover, the recursive formulation of the tuner process can also enable the tuner process to correct itself as gait cycle iterations are performed. Expressing an embodiment of the tuning process in mathematical terms leads to: K _(C)(k)=K _(C)(k−1)*(Δ(k)+1),  Equation 34

where

k is the discrete-time index;

K_(C)(k−1) is the previous value of the gain scaling factor; and

$\begin{matrix} {{{\Delta(k)} = \frac{{\Delta\;{\theta(k)}} - {\Delta\;{\theta_{EP}(k)}}}{\Delta\;{\theta_{SP}(k)}}},} & {{Equation}\mspace{14mu} 35} \end{matrix}$

In Equation 35, the deflection term (i.e. Δθ(k)−Δθ_(SP)(k)) is normalized with respect to the expected deflection value (i.e. Δθ_(SP)(k)), the result of which is offset in Equation 34 by unity in order to presents a net gain or attenuation of the gain scaling factor K_(C).

Tuning Process

Referring to FIG. 20, there is shown a flow diagram of a tuning process 300 that may be executed by the dynamic gain tuner 135. The steps of the process 300 are indicated by blocks 302 to 324.

The process 300 starts at block 302 by verifying, from information received from the locomotion recognition module 110, whether the locomotion performed by the user of the motorized POD 200 is in a level walking state. If the user is in the level walking state, the process 300 proceeds to block 304, if not, the process 300 continues verifying if the user's locomotion is the level walking state.

At block 304, the process 300 verifies, using information received from the locomotion recognition module 110, whether the level walking state of locomotion of the user of the motorized POD 200 is in the stance phase. If the user is in the stance phase of the level walking state, the process 300 proceeds to block 306, if not, the process 300 continues verifying if the user's level walking state of locomotion is in the stance phase. The stance phase detection can be performed based on the velocity of the equilibrium trajectory, which is null during the stance phase. Alternatively, the stance phase detection can be performed using pressure sensors.

At block 306, the process 300 verifies whether the first expected overshoot of the position response of the motorized POD 200 is detected, e.g. overshoot region 51 of FIG. 17. In one embodiment, the process 300 detects the first overshoot when the previous locomotion state of the user is found to be the swing state combined with a current negative deflection value. If the process 300 detects the first overshoot, the process 300 proceeds to block 308, if not, the process 300 proceeds to block 304.

At block 308, the process 300 computes the current deflection and a register containing the maximum deflection value is updated if the current deflection value is superior to the value that is stored in the register.

At block 310, the process 300 verifies whether the second expected overshoot of the position response of the motorized POD 200 is detected, e.g. overshoot region 52 of FIG. 17. In one embodiment, the process 300 detects the second overshoot when a deflection signal zero crossing is detected. If a deflection signal zero crossing is detected, the process 300 proceeds to block 312, if not, the process proceeds to block 308.

At block 312, having detected the second overshoot, the process 300 computes the current deflection and the register containing the maximum deflection value is updated if the current deflection value is superior to the value that is stored in the register.

At block 314, the process 300 verifies whether the third expected overshoot of the position response of the motorized POD 200 is detected, e.g. overshoot region 53 of FIG. 17. In one embodiment, the process 300 detects the third overshoot when a deflection signal zero crossing is detected. If a deflection signal zero crossing is detected, the process 300 proceeds to block 316, if not, the process 300 proceeds to block 312.

At block 316, having detected the third overshoot, the process 300 computes the current deflection and the register containing the maximum deflection value is updated if the current deflection value is superior to the value that is stored in the register.

At block 318, the process 300 verifies whether the end of the third overshoot is detected, e.g. all three overshoots 51, 52, 53 of FIG. 17 have been considered. In one embodiment, the process 300 detects the end of the third overshoot when the swing phase is detected, which may be accomplished from information received from the locomotion recognition module 110. If the end of the third overshoot is detected, the process 300 proceeds to block 320, if not, the process 300 proceeds to block 316.

Having measured the maximum deflection, the process 300, at block 320, computes the gain scaling factor K_(C) using Equation 34 at the point of maximum deflection with the initial value of K_(C) being set to 1. As mentioned previously, although described using maximum deflection, any other predetermined point can be used to compute the gain scaling factor.

At block 322 the process 300 tunes the compensated proportional K_(P-C) and derivative K_(D-C) gains (or proportional K_(P) and derivative K_(D) gains). In one embodiment, the process 300 tunes the compensated proportional K_(P-C) and derivative K_(D-C) gains (or proportional K_(P) and derivative K_(D) gains) by multiplying them by the gain scaling factor K_(C) computed at block 320.

Finally, at block 322, the maximum deflection register is reset and the process 300 proceeds back to block 302. Although illustrated as occurring at the end of the process 300, the reset can occur at other times, such as the beginning of the process (prior to block 302), prior to measuring the first overshoot (between blocks 304 and 306), and the like.

In an alternative embodiment, since it can be assumed that the maximum deflection under loading during the second overshoot (overshoot region 52 of FIG. 17) provides a valid performance measure for the overall stance phase system behavior, process 300 limit the measurement of the maximum deflection to within the second overshoot. A similar process can be used for other locomotion types, for example, ascending and descending stairs.

Although described by way of particular non-limiting illustrative embodiments and examples thereof, it should be noted that it will be apparent to persons skilled in the art that modifications may be applied to the particular embodiments described herein without departing from the scope of the disclosure.

Systems, modules, and controls described herein may comprise software, firmware, hardware, or any combination(s) of software, firmware, or hardware suitable for the purposes described herein. Software and other modules may reside on microcontrollers, microprocessors, and other devices suitable for the purposes described herein.

Embodiments are also described above with reference to flow chart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products. It will be understood that each block of the flow chart illustrations and/or block diagrams, and combinations of blocks in the flow chart illustrations and/or block diagrams, may be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the acts specified in the flow chart and/or block diagram block or blocks.

These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to operate in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the acts specified in the flow chart and/or block diagram block or blocks. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operations to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the acts specified in the flow chart and/or block diagram block or blocks.

While certain embodiments of the inventions have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the disclosure. Indeed, the novel methods and systems described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the methods and systems described herein may be made without departing from the spirit of the disclosure. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the disclosure. 

The invention claimed is:
 1. A non-transitory computer-readable medium comprising executable instructions that when executed by one or more processors cause the one or more processors to: determine a joint angle of a joint of a motorized prosthetic or orthotic device (POD) during a gait cycle; determine one or more control signals that control a stiffness of one or more actuators of the motorized POD based at least in part on a difference of the determined joint angle from an equilibrium position during stance phase of the gait cycle, wherein the equilibrium position is approximately constant during at least a majority of the stance phase; and cause the one or more control signals to be communicated to the one or more actuators to control the stiffness of the one or more actuators, wherein the stiffness of the one or more actuators causes the measured joint angle to follow a Winter's reference trajectory during the stance phase.
 2. The non-transitory computer-readable medium of claim 1, wherein the equilibrium joint angle is determined using a regression line of torque-angle during stance phase of a gait cycle.
 3. The non-transitory computer-readable medium of claim 1, wherein the one or more control signals are based at least in part on at least a position set-point, a proportional gain, and a derivative gain.
 4. The non-transitory computer-readable medium of claim 1, wherein the one or more control signals are determined based at least in part on at least one of body mass or weight.
 5. The non-transitory computer-readable medium of claim 1, wherein the one or more control signals are updated between gait cycles during movement of a user. 